_CM_PARTIAL_RESOURCE_DESCRIPTOR

//0x10 bytes (sizeof) struct _CM_PARTIAL_RESOURCE_DESCRIPTOR { UCHAR Type; //0x0 UCHAR ShareDisposition; //0x1 USHORT Flags; //0x2 union { struct { union _LARGE_INTEGER Start; //0x4 ULONG Length; //0xc } Generic; //0x4 struct { union _LARGE_INTEGER Start; //0x4 ULONG Length; //0xc } Port; //0x4 struct { USHORT Level; //0x4 USHORT Group; //0x6 ULONG Vector; //0x8 ULONG Affinity; //0xc } Interrupt; //0x4 struct { union { struct { USHORT Group; //0x4 USHORT MessageCount; //0x6 ULONG Vector; //0x8 ULONG Affinity; //0xc } Raw; //0x4 struct { USHORT Level; //0x4 USHORT Group; //0x6 ULONG Vector; //0x8 ULONG Affinity; //0xc } Translated; //0x4 }; } MessageInterrupt; //0x4 struct { union _LARGE_INTEGER Start; //0x4 ULONG Length; //0xc } Memory; //0x4 struct { ULONG Channel; //0x4 ULONG Port; //0x8 ULONG Reserved1; //0xc } Dma; //0x4 struct { ULONG Data[3]; //0x4 } DevicePrivate; //0x4 struct { ULONG Start; //0x4 ULONG Length; //0x8 ULONG Reserved; //0xc } BusNumber; //0x4 struct { ULONG DataSize; //0x4 ULONG Reserved1; //0x8 ULONG Reserved2; //0xc } DeviceSpecificData; //0x4 struct { union _LARGE_INTEGER Start; //0x4 ULONG Length40; //0xc } Memory40; //0x4 struct { union _LARGE_INTEGER Start; //0x4 ULONG Length48; //0xc } Memory48; //0x4 struct { union _LARGE_INTEGER Start; //0x4 ULONG Length64; //0xc } Memory64; //0x4 } u; //0x4 };